Dynamic generation of order entry fields on a trading interface

ABSTRACT

Some embodiments of the invention provide systems and methods for displaying market data for a tradable object which are configured to generate order entry fields for display responsive to user input wherein the generated fields are automatically associated with a price for the tradable object to facilitate the timely placement of a trade.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/008,642, filed Jun. 14, 2018, now U.S. Pat. No. 10,699,339, which isa continuation of U.S. patent application Ser. No. 15/679,865, filedAug. 17, 2017, now U.S. Pat. No. 10,026,127, which is a continuation ofU.S. patent application Ser. No. 13/935,208, filed Jul. 3, 2013, nowU.S. Pat. No. 9,767,515, the contents of each of which are fullyincorporated herein by reference for all purposes.

BACKGROUND

An electronic trading system generally includes a trading device incommunication with an electronic exchange. The electronic exchange sendsinformation about a market, such as prices and quantities, to thetrading device. The trading device sends messages, such as messagesrelated to orders, to the electronic exchange. The electronic exchangeattempts to match quantity of an order with quantity of one or morecontra-side orders.

It should be understood that the trading device may be any computingdevice, such as a personal computer, laptop computer, hand-heldcomputer, tablet computer, smart phone or some other device thatincludes a display, user interface and includes hardware forcommunication with the electronic exchange.

Traders often use automated or semi-automated trading tools,collectively hereinafter referred to as automated tools, thatautomatically or semi-automatically send orders for tradable objects tothe exchange. Many different trading tools are usually provided to,among other things, facilitate fast and accurate order entry. Forinstance, an automated or semi-automated tool might quickly calculateone or more order parameters, such as order price or order quantity,based on market conditions, or some other reference condition, and thenautomatically send an order with these parameters to an exchange formatching.

Traders frequently execute trading strategies that require the constanttracking of a large amount of individual tradable objects and the needto assimilate large amounts of data in order to recognize market trends,view current market conditions, and quickly enter, cancel, update, andmodify orders. Thus, traders employ specialized trading interfaces forassistance. Trading interfaces present a variety of information, whichmay include the status of each tradable object in a line of numeric datafields covering key variables relevant to trading, such as price,quantity available at each price, the level of inside market, andothers. Traders may regularly operate many such trading interfaces inorder to track market conditions for a plurality of tradable objects andexecute various trading strategies simultaneously. The use of multipleinterfaces can become burdensome to a trader who needs to accuratelyview critical changes in the market conditions of a large number oftradable objects in order to quickly execute trades. Unlessaccommodations are made, the interfaces that are supposed to help thetrader operate more efficiently and effectively can ultimately becomeoverwhelming and inhibit the trader instead.

BRIEF DESCRIPTION OF THE FIGURES

Certain embodiments are disclosed with reference to the followingdrawings.

FIG. 1 illustrates a block diagram representative of an exampleelectronic trading system in which certain embodiments may be employed.

FIG. 2 illustrates a block diagram of another example electronic tradingsystem in which certain embodiments may be employed.

FIG. 3 illustrates a block diagram of an example computing device whichmay be used to implement the disclosed embodiments.

FIGS. 4-9 illustrate an exemplary trading interface for presentingmarket data relating to a tradable object which may be employed withcertain disclosed embodiments and the generation of order entry fieldsfor facilitating the execution of trades of the tradable object, amongother things.

FIGS. 10-12 illustrate a pair of exemplary trading interfaces positionedto illustrate the effects of proximity on the generation of order entryfields for facilitating the execution of trades of the tradable object,among other things.

FIG. 13 is a flow diagram illustrating an exemplary method forpresenting market data and facilitating the execution of trades throughdynamically generated displays of order entry fields on a tradinginterface, among other things, relating to a tradable object which maybe employed with certain disclosed embodiments.

Certain embodiments will be better understood when read in conjunctionwith the provided figures, which illustrate examples. It should beunderstood, however, that the embodiments are not limited to thearrangements and instrumentality shown in the attached figures.

DETAILED DESCRIPTION

The disclosed embodiments generally relate to systems and methods forproviding trading interfaces that display market data in a manner thatassists traders in executing trades. Some embodiments are directed tosystems and methods for displaying market data on a trading interfacerelating to prices for trading a tradable object which are operativelyconfigured to dynamically generate an order entry field for display onthe trading interface in response to detecting or receiving an instanceof user input through a data input device within an activation regiondefined on the trading interface in a positional relationship withmarket data relating to a unique price for trading the tradable object,wherein the instance of the user input in the activation regiongenerates the display of the order entry field whereby the order entryfield facilitates the execution of a trade of the tradable object at theunique price.

As used herein, the term “tradable object” refers to anything that canbe traded with a quantity and/or price. It includes, but is not limitedto, all types of traded events, goods and/or financial products, whichcan include, for example, stocks, options, bonds, futures, currency, andwarrants, as well as funds, derivatives and collections of theforegoing, and all types of commodities, such as grains, energy, andmetals. The tradable object may be “real,” such as products that arelisted by an exchange for trading, or “synthetic,” such as a combinationof real products that is created by the user. A tradable object couldactually be a combination of other tradable objects, such as a class oftradable objects.

Although this description discloses embodiments including, among othercomponents, software executed on hardware, it should be noted that theembodiments are merely illustrative and should not be considered aslimiting. For example, it is contemplated that any or all of thesehardware and software components may be embodied exclusively inhardware, exclusively in software, exclusively in firmware, or in anycombination of hardware, software, and/or firmware. Accordingly, certainembodiments may be implemented in other ways. Furthermore, well knownprocess steps and computer components may have not been described indetail herein in order to avoid unnecessarily obscuring the underlyingconcepts.

I. BRIEF DESCRIPTION OF CERTAIN EMBODIMENTS

In one embodiment, a method for displaying market data and facilitatingthe execution of trades through a computing device in communication withan electronic exchange is disclosed. The method comprises the steps ofdisplaying a trading interface for presenting current market data

In some embodiments, the trading interface includes a plurality ofgenerally axially aligned value levels defining a central price axis, aplurality of ask regions and a plurality of bid regions. Each of theaxially aligned value levels contains a current numerical price for atradable object in sequential order along the price axis. Each askregion of the plurality of ask regions is transversely aligned to avalue level relative to the central price axis and contains a numericalvalue representing a current ask quantity at the price displayed in thetransversely aligned value level, thereby displaying a positionalrelationship between the current ask quantity and price along thecentral price axis. Each bid region of the plurality of bid regions istransversely aligned to a value level and contains a numerical valuerepresenting a current bid quantity at the price displayed in thetransversely aligned value level, thereby displaying a positionalrelationship between the current bid quantity and price along thecentral price axis.

In one embodiment, a method as described herein includes the step ofgenerating an order entry field for display on the trading interface inresponse to receiving an instance of user input within an activationregion associated with the order entry field and defined within thetrading interface in a positional relationship with a unique axiallyaligned value level of the plurality of axially aligned value levels,wherein the order entry field facilitates the execution of a trade ofthe tradable object at the price displayed in the unique axially alignedvalue level.

In another embodiment, a method for displaying market data and executingtrade orders includes the step of displaying a trading interface forpresenting current market data in an area of a display device. Thetrading interface may include value levels, ask regions, bid regions andorder entry and associated activation regions defined within the tradinginterface in a transversely aligned positional relationship with theaxially aligned value levels of the plurality of axially aligned valuelevels. The method of this embodiment may also include the step ofgenerating an order entry field for display on the trading interface inresponse to positioning a cursor within an activation region, whereinthe order entry field facilitates the execution of a trade of thetradable object at the price displayed in the transversely aligned valuelevel.

Some embodiments of a system for displaying market data and executingtrade orders which includes a computing device in a communication withan electronic exchange are also disclosed. The system comprises adisplay device for displaying a trading interface which may include allof the features described above and/or the features of the exemplaryembodiments described herein below, and a data input device forgenerating an instance of user input within an activation region,wherein the computing device is configured to generate an order entryfield and the associated activation region for display on the tradinginterface in response to receiving an instance of user input within anactivation region, wherein the order entry field facilitates theexecution of a trade of the tradable object at the price displayed inthe transversely aligned value level.

Other embodiments are directed to a non-transitory computer-readableinformation recording medium which stores a program for controlling acomputer to receive market data from an electronic exchange, the programcomprising code for permitting the computer to perform the steps fordisplaying the trading interface including all of the features describedabove and/or the features of the exemplary embodiments described hereinbelow, and generating an order entry field for display on the tradinginterface in response to receiving an instance of user input within anactivation region associated with the order entry field and definedwithin the trading interface in a positional relationship with a uniqueaxially aligned value level of the plurality of axially aligned valuelevels, wherein the order entry field facilitates the execution of atrade of the tradable object at the price displayed in the uniqueaxially aligned value level.

II. EXAMPLE ELECTRONIC TRADING SYSTEM

FIG. 1 illustrates a block diagram representative of an exampleelectronic trading system 100 in which certain embodiments may beemployed. The system 100 includes a trading device 110, a gateway 120,and an exchange 130. The trading device 110 is in communication with thegateway 120. The gateway 120 is in communication with the exchange 130.As used herein, the phrase “in communication” encompasses directcommunication and/or indirect communication through one or moreintermediary components. The exemplary electronic trading system 100depicted in FIG. 1 may be in communication with additional components,subsystems, and elements to provide additional functionality andcapabilities without departing from the teaching and disclosure providedherein.

In operation, the trading device 110 may receive market data from theexchange 130 through the gateway 120. A user may utilize the tradingdevice 110 to monitor this market data and/or base a decision to send anorder message to buy or sell one or more tradeable objects to theexchange 130.

Market data may include data about a market for a tradeable object. Forexample, market data may include the inside market, market depth, lasttraded price (“LTP”), a last traded quantity (“LTQ”), or a combinationthereof. The inside market is the lowest available ask price (bestoffer) and the highest available bid price (best bid) in the market fora particular tradable object at a particular point in time (since theinside market may vary over time). Market depth refers to quantitiesavailable at the inside market and at other prices away from the insidemarket. Due to the quantity available, there may be “gaps” in marketdepth.

A tradeable object is anything which may be traded. For example, acertain quantity of the tradeable object may be bought or sold for aparticular price. A tradeable object may include, for example, financialproducts, stocks, options, bonds, future contracts, currency, warrants,funds derivatives, securities, commodities, swaps, interest rateproducts, index-based products, traded events, goods, or a combinationthereof. A tradeable object may include a product listed and/oradministered by an exchange (for example, the exchange 130), a productdefined by the user, a combination of real or synthetic products, or acombination thereof. There may be a synthetic tradeable object thatcorresponds and/or is similar to a real tradeable object.

An order message is a message that includes a trade order. A trade ordermay be, for example, a command to place an order to buy or sell atradeable object, a command to initiate managing orders according to adefined trading strategy, a command to change or cancel a previouslysubmitted order (for example, modify a working order), an instruction toan electronic exchange relating to an order, or a combination thereof.

The trading device 110 may include one or more electronic computingplatforms. For example, the trading device 110 may include a desktopcomputer, hand-held device, laptop, server, a portable computing device,a trading terminal, an embedded trading system, a workstation, analgorithmic trading system such as a “black box” or “grey box” system,cluster of computers, or a combination thereof. As another example, thetrading device 110 may include a single or multi-core processor incommunication with a memory or other storage medium configured toaccessibly store one or more computer programs, applications, libraries,computer readable instructions, and the like, for execution by theprocessor.

As used herein, the phrases “configured to” and “adapted to” encompassthat an element, structure, or device has been modified, arranged,changed, or varied to perform a specific function or for a specificpurpose.

By way of example, the trading device 110 may be implemented as apersonal computer running a copy of X TRADER®, an electronic tradingplatform provided by Trading Technologies International, Inc. ofChicago, Ill. (“Trading Technologies”). As another example, the tradingdevice 110 may be a server running a trading application providingautomated trading tools such as ADL™, AUTOSPREADER®, and/or AUTOTRADER™,also provided by Trading Technologies. In yet another example, thetrading device 110 may include a trading terminal in communication witha server, where collectively the trading terminal and the server are thetrading device 110.

The trading device 110 is generally owned, operated, controlled,programmed, configured, or otherwise used by a user. As used herein, thephrase “user” may include, but is not limited to, a human (for example,a trader), trading group (for example, group of traders), or anelectronic trading device (for example, an algorithmic trading system).One or more users may be involved in the ownership, operation, control,programming, configuration, or other use, for example.

The trading device 110 may include one or more trading applications. Asused herein, a trading application is an application that facilitates orimproves electronic trading. A trading application provides one or moreelectronic trading tools. For example, a trading application stored by atrading device may be executed to arrange and display market data in oneor more trading windows. In another example, a trading application mayinclude an automated spread trading application providing spread tradingtools. In yet another example, a trading application may include analgorithmic trading application that automatically processes analgorithm and performs certain actions, such as placing an order,modifying an existing order, deleting an order. In yet another example,a trading application may provide one or more trading screens. A tradingscreen may provide one or more trading tools that allow interaction withone or more markets. For example, a trading tool may allow a user toobtain and view market data, set order entry parameters, submit ordermessages to an exchange, deploy trading algorithms, and/or monitorpositions while implementing various trading strategies. The electronictrading tools provided by the trading application may always beavailable or may be available only in certain configurations oroperating modes of the trading application.

A trading application may include computer readable instructions thatare stored in a computer readable medium and executable by a processor.A computer readable medium may include various types of volatile andnon-volatile storage media, including, for example, random accessmemory, read-only memory, programmable read-only memory, electricallyprogrammable read-only memory, electrically erasable read-only memory,flash memory, any combination thereof, or any other tangible datastorage device. As used herein, the term non-transitory or tangiblecomputer readable medium is expressly defined to include any type ofcomputer readable storage media and to exclude propagating signals.

One or more components or modules of a trading application may be loadedinto the computer readable medium of the trading device 110 from anothercomputer readable medium. For example, the trading application (orupdates to the trading application) may be stored by a manufacturer,developer, or publisher on one or more CDs or DVDs, which are thenloaded onto the trading device 110 or to a server from which the tradingdevice 110 retrieves the trading application. As another example, thetrading device 110 may receive the trading application (or updates tothe trading application) from a server, for example, via the Internet oran internal network. The trading device 110 may receive the tradingapplication or updates when requested by the trading device 110 (forexample, “pull distribution”) and/or un-requested by the trading device110 (for example, “push distribution”).

The trading device 110 may be adapted to send order messages. Forexample, the order messages may be sent to through the gateway 120 tothe exchange 130. As another example, the trading device 110 may beadapted to send order messages to a simulated exchange in a simulationenvironment which does not effectuate real-world trades.

The order messages may be sent at the request of a user. For example, atrader may utilize the trading device 110 to send an order message ormanually input one or more parameters for a trade order (for example, anorder price and/or quantity). As another example, an automated tradingtool provided by a trading application may calculate one or moreparameters for a trade order and automatically send the order message.In some instances, an automated trading tool may prepare the ordermessage to be sent but not actually send it without confirmation from auser.

An order message may be sent in one or more data packets or through ashared memory system. For example, an order message may be sent from thetrading device 110 to the exchange 130 through the gateway 120. Thetrading device 110 may communicate with the gateway 120 using a localarea network, a wide area network, a wireless network, a virtual privatenetwork, a T1 line, a T3 line, an integrated services digital network(“ISDN”) line, a point-of-presence, the Internet, and/or a shared memorysystem, for example.

The gateway 120 may include one or more electronic computing platforms.For example, the gateway 120 may implemented as one or more desktopcomputer, hand-held device, laptop, server, a portable computing device,a trading terminal, an embedded trading system, workstation with asingle or multi-core processor, an algorithmic trading system such as a“black box” or “grey box” system, cluster of computers, or anycombination thereof.

The gateway 120 may facilitate communication. For example, the gateway120 may perform protocol translation for data communicated between thetrading device 110 and the exchange 130. The gateway 120 may process anorder message received from the trading device 110 into a data formatunderstood by the exchange 130, for example. Similarly, the gateway 120may transform market data in an exchange-specific format received fromthe exchange 130 into a format understood by the trading device 110, forexample.

The gateway 120 may include a trading application, similar to thetrading applications discussed above, that facilitates or improveselectronic trading. For example, the gateway 120 may include a tradingapplication that tracks orders from the trading device 110 and updatesthe status of the order based on fill confirmations received from theexchange 130. As another example, the gateway 120 may include a tradingapplication that coalesces market data from the exchange 130 andprovides it to the trading device 110. In yet another example, thegateway 120 may include a trading application that provides riskprocessing, calculates implieds, handles order processing, handlesmarket data processing, or a combination thereof.

In certain embodiments, the gateway 120 communicates with the exchange130 using a local area network, a wide area network, a virtual privatenetwork, a T1 line, a T3 line, an ISDN line, a point-of-presence, theInternet, and/or a shared memory system, for example.

The exchange 130 may be owned, operated, controlled, or used by anexchange entity. Example exchange entities include the CME Group, theLondon International Financial Futures and Options Exchange, theIntercontinental Exchange, and Eurex. The exchange 130 may include anelectronic matching system, such as a computer, server, or othercomputing device, which is adapted to allow tradeable objects, forexample, offered for trading by the exchange, to be bought and sold. Theexchange 130 may include separate entities, some of which list and/oradminister tradeable objects and others which receive and match orders,for example. The exchange 130 may include an electronic communicationnetwork (“ECN”), for example.

The exchange 130 may be an electronic exchange. The exchange 130 isadapted to receive order messages and match contra-side trade orders tobuy and sell tradeable objects. Unmatched trade orders may be listed fortrading by the exchange 130. The trade orders may include trade ordersreceived from the trading device 110 or other devices in communicationwith the exchange 130, for example. For example, typically the exchange130 will be in communication with a variety of other trading devices(which may be similar to trading device 110) which also provide tradeorders to be matched.

The exchange 130 is adapted to provide market data. Market data may beprovided in one or more messages or data packets or through a sharedmemory system. For example, the exchange 130 may publish a data feed tosubscribing devices, such as the trading device 110 or gateway 120. Thedata feed may include market data.

The system 100 may include additional, different, or fewer components.For example, the system 100 may include multiple trading devices,gateways, and/or exchanges. In another example, the system 100 mayinclude other communication devices, such as middleware, firewalls,hubs, switches, routers, servers, exchange-specific communicationequipment, modems, security managers, and/or encryption/decryptiondevices.

III. EXPANDED EXAMPLE ELECTRONIC TRADING SYSTEM

FIG. 2 illustrates a block diagram of another example electronic tradingsystem 200 in which certain embodiments may be employed. In thisexample, a trading device 210 a is in communication with an exchange 230a through a gateway 220 a. The following discussion mainly focuses onthe trading device 210 a, gateway 220 a, and the exchange 230 a.However, the trading device 210 a may also be connected to andcommunicate with any number of gateways 220 n connected to exchanges 230n. The communication between the trading device 110 a and otherexchanges 230 n may be the same, similar, or different than thecommunication between the trading device 210 a and exchange 230 a.Generally, each exchange has its own preferred techniques and/or formatsfor communicating with a trading device, a gateway, the user, or anotherexchange.

The trading device 210 a, which may be similar to the trading device 110in FIG. 1, may include a server 212 a in communication with a tradingterminal 214 a. The server 212 a may be located geographically closer tothe gateway 120 than the trading terminal 214 a. As a result, the server212 a latency benefits that are not afforded to the trading terminal 214a. In operation, the trading terminal 214 a may provide a trading screento a user and communicate commands to the server 212 a for furtherprocessing. For example, a trading algorithm may be deployed to theserver 212 a for execution based on market data. The server 212 a mayexecute the trading algorithm without further input from the user. Inanother example, the server 212 a may include a trading applicationproviding automated trading tools and communicate back to the tradingterminal 214 a. The trading device 210 a may include, additional,different, or fewer components.

The trading device 210 a may communicate with the gateway 220 a usingone or more communication networks. As used herein, a communicationnetwork is any network, including the Internet, which facilitates orenables communication between, for example, the trading device 210 a,the gateway 220 a and the exchange 220 a. For example, as shown in FIG.2, the trading device 210 a may communicate with the gateway 220 aacross a multicast communication network 202 a. The data on the network202 a may be logically separated by subject (for example, prices,orders, or fills). As a result, the server 212 a and trading terminal214 a can subscribe to and receive data (for example, data relating toprices, orders, or fills) depending on their individual needs.

The gateway 220 a, which may be similar to the gateway 120 of FIG. 1,may include a price server 222 a, order server 224 a, and fill server226 a. The gateway 220 a may include additional, different, or fewercomponents. The price server 222 a may process price data. Price dataincludes data related to a market for one or more tradeable objects. Theorder server 224 a may process order data. Order data is data related toa user's trade orders. For example, order data may include ordermessages, confirmation messages, or other types of messages. The fillserver collects and provides fill data. Fill data includes data relatingto one or more fills of trade orders. For example, the fill server 226 amay provide a record of trade orders, which have been routed through theorder server 224 a, that have and have not been filled. The servers 222a, 224 a, 226 a may run on the same machine or separate machines.

The gateway 220 a may communicate with the exchange 230 a using one ormore communication networks. For example, as shown in FIG. 2, there maybe two communication networks connecting the gateway 220 a and theexchange 230 a. The network 204 a may be used to communicate market datato the price server 222 a. In some instances, the exchange 230 a mayinclude this data in a data feed that is published to subscribingdevices. The network 206 a may be used to communicate order data.

The exchange 230 a, which may be similar to the exchange 130 of FIG. 1,may include an order book 232 a and a matching engine 234 a. Theexchange 230 a may include additional, different, or fewer components.The order book 232 a is a database that includes data relating tounmatched quantity of trade orders. For example, an order book mayinclude data relating to a market for a tradeable object, such as theinside market, market depth at various price levels, the last tradedprice, and the last traded quantity. The matching engine 234 a may matchcontra-side bids and offers. For example, the matching engine 234 a mayexecute one or more matching algorithms that match contra-side bids andoffers. A sell order is contra-side to a buy order with the same price.Similarly, a buy order is contra-side to a sell order with the sameprice.

In operation, the exchange 230 a may provide price data from the orderbook 232 a to the price server 222 a and order data and/or fill datafrom the matching engine 234 a to the order server 224 a. Servers 222 a,224 a, 226 a may translate and communicate this data back to the tradingdevice 210 a. The trading device 210 a, for example, using a tradingapplication, may process this data. For example, the data may bedisplayed to a user. In another example, the data may be utilized in atrading algorithm to determine whether a trade order should be submittedto the exchange 230 a. The trading device 210 a may prepare and send anorder message to the exchange 230 a.

In certain embodiments, the gateway 220 a is part of the trading device210 a. For example, the components of the gateway 220 a may be part ofthe same computing platform as the trading device 210 a. As anotherexample, the functionality of the gateway 220 a may be performed bycomponents of the trading device 210 a. In certain embodiments, thegateway 220 a is not present. Such an arrangement may occur when thetrading device 210 a does not need to utilize the gateway 220 a tocommunicate with the exchange 230 a, for example. For example, if thetrading device 210 a has been adapted to communicate directly with theexchange 230 a.

Additional trading devices 210 b-210 e, which are similar to tradingdevice 210 a, may be connected to one or more of the gateways 220 a-220n and exchanges 230 a-230 n utilizing, for example, networks 202 n, 204n, and 206 n. Furthermore, additional gateways 220 n, similar to thegateway 220 a, include a price server 222 n, an order server 224 n, anda fill server 226 n, may be in communication with multiple exchanges 230n, similar to the exchange 230 a, include an order book 232 n and amatch engine 234 n. Each gateway may be in communication with one ormore different exchanges, for example. Such an arrangement may, forexample, allow one or more trading devices 210 a to trade at more thanone exchange (and/or provide redundant connections to multipleexchanges).

IV. EXAMPLE COMPUTING DEVICE

FIG. 3 illustrates a block diagram of an example computing device 300which may be used to implement the disclosed embodiments. The tradingdevice 110 of FIG. 1 may include one or more computing devices 300, forexample. The gateway 120 of FIG. 1 may include one or more computingdevices 300, for example. The exchange 130 of FIG. 1 may include one ormore computing devices 300, for example.

The computing device 300 includes a communication network 310, aprocessor 312, a memory 314, an interface 316, an input device 318, andan output device 320. The computing device 300 may include additional,different, or fewer components. For example, multiple communicationnetworks, multiple processors, multiple memory, multiple interfaces,multiple input devices, multiple output devices, or any combinationthereof, may be provided. As another example, the computing device 300may not include an input device 318 or output device 320.

As shown in FIG. 3, the computing device 300 may include a processor 312coupled to a communication network 310. The communication network 310may include a communication bus, channel, electrical or optical network,circuit, switch, fabric, or other mechanism for communicating databetween components in the computing device 300. The communicationnetwork 310 may be communicatively coupled with and transfer databetween any of the components of the computing device 300.

The processor 312 may be any suitable processor, processing unit, ormicroprocessor. The processor 312 may include one or more generalprocessors, digital signal processors, application specific integratedcircuits, field programmable gate arrays, analog circuits, digitalcircuits, programmed processors, and/or combinations thereof, forexample. The processor 312 may be a single device or a combination ofdevices, such as one or more devices associated with a network ordistributed processing. Any processing strategy may be used, such asmulti-processing, multi-tasking, parallel processing, and/or remoteprocessing. Processing may be local or remote and may be moved from oneprocessor to another processor. In certain embodiments, the computingdevice 300 is a multi-processor system and, thus, may include one ormore additional processors which are communicatively coupled to thecommunication network 310.

The processor 312 may be operable to execute logic and other computerreadable instructions encoded in one or more tangible media, such as thememory 314. As used herein, logic encoded in one or more tangible mediaincludes instructions which may be executable by the processor 312 or adifferent processor. The logic may be stored as part of software,hardware, integrated circuits, firmware, and/or micro-code, for example.The logic may be received from an external communication device via acommunication network such as the network 340. The processor 312 mayexecute the logic to perform the functions, acts, or tasks illustratedin the figures or described herein.

The memory 314 may be one or more tangible media, such as computerreadable storage media, for example. Computer readable storage media mayinclude various types of volatile and non-volatile storage media,including, for example, random access memory, read-only memory,programmable read-only memory, electrically programmable read-onlymemory, electrically erasable read-only memory, flash memory, anycombination thereof, or any other tangible data storage device. As usedherein, the term non-transitory or tangible computer readable medium isexpressly defined to include any type of computer readable medium and toexclude propagating signals. The memory 314 may include any desired typeof mass storage device including hard disk drives, optical media,magnetic tape or disk, etc.

The memory 314 may include one or more memory devices. For example, thememory 314 may include local memory, a mass storage device, volatilememory, non-volatile memory, or a combination thereof. The memory 314may be adjacent to, part of, programmed with, networked with, and/orremote from processor 312, so the data stored in the memory 314 may beretrieved and processed by the processor 312, for example. The memory314 may store instructions which are executable by the processor 312.The instructions may be executed to perform one or more of the acts orfunctions described herein or shown in the figures.

The memory 314 may store a trading application 330. In certainembodiments, the trading application 330 may be accessed from or storedin different locations. The processor 312 may access the tradingapplication 330 stored in the memory 314 and execute computer-readableinstructions included in the trading application 330.

In certain embodiments, during an installation process, the tradingapplication may be transferred from the input device 318 and/or thenetwork 340 to the memory 314. When the computing device 300 is runningor preparing to run the trading application 330, the processor 312 mayretrieve the instructions from the memory 314 via the communicationnetwork 310.

V. DYNAMICALLY GENERATING ORDER ENTRY FIELDS

Exemplary embodiments described below include a trading interface thatpresents market data and dynamically generates order entry fields inresponse to user input which are intended to allow a trader to gain anaccurate and comprehensive view of the current market conditions for alarge number of tradable objects and execute trades quickly, among otherthings. The dynamically generated order entry fields provide a mechanismby which a user may enter an order via a trading interface configuredand minimized to reduce the amount of display area necessary to utilizethe displayed market data. The reduced footprint of the example tradinginterface configured allows the trader to display more informationwithout having to sacrifice functionality such as the ability to entertrades efficiently. As used herein, the term “market data” is notintended to be limited to data and information describing trade ordersand market conditions, and may include any information received directlyor indirectly from the exchange 130 or data generated by the tradingdevice 300. Embodiments discussed herein describe the user input asinvolving movement of a cursor about the trading interface which may bedirected via a data input device such as a mouse, keyboard, touchpad orany alternative data input devices or means.

FIG. 4 provides an embodiment of an exemplary trading interface of theinvention for presenting market data relating to a tradable object thatis referred to herein as a trading interface 402. Interface 402 may bedisplayed in a display area 400 defined on any type of display device incommunication with computing device 300, and may be connected with orotherwise comprise output device 320.

In this embodiment, trading interface 402 includes a plurality of valuelevels 404 arranged in axial alignment with one another defining a valueaxis 406. Interface 402 further includes a plurality of bid quantityregions 408 and a plurality of ask quantity regions 410. The pluralityof bid quantity regions 408 are axially aligned with one anotherdefining a bid quantity axis 412 having a centerline or axis aligned inparallel to value axis 406. The plurality of bid quantity regions 408are located in a generally a transverse position with respect to valueaxis 406 defined by the plurality of value levels 404. The plurality ofask quantity regions 410 are axially aligned with one another definingan ask quantity axis 414 having A centerline or axis aligned in parallelto value axis 406. The plurality of ask quantity regions 410 aretherefore located in a generally a transverse position with respect tovalue axis 406 defined by the plurality of value levels 404, similarlyto the plurality of bid quantity regions 408 but on the opposing side ofvalue axis 406 in this embodiment. In one embodiment, the value axis 406along with the bid quantity axis 412 and ask quantity axis 414 arealigned and arranged to define a ladder trading interface or ladderinterface.

Each value level 404 in interface 402 contains a numerical valuerepresenting a price for the tradable object. Either the bid quantityregion 408 or the ask quantity region 410 transversely adjacent to eachvalue level 404 may contain a numerical value representing the bidquantity or ask quantity for the tradable object at the numerical priceshown in the corresponding value level 404. In this embodiment, theprices shown in value levels 404 are presented in sequential order fromlowest price at a bottom 416 of interface 402 to highest price at a top418 of interface 402.

FIGS. 5-7 illustrate the generation of an order entry field 420A fordisplay in an area adjacent to a value level 404A of trading interface402. In this embodiment, the generation of order entry fields such asfield 420A shown in FIG. 5 is responsive to movement of a cursor “C” asdirected by a user through a data input device into an activation region422A associated with the order entry field defined on interface 402 asshown particularly in FIG. 6.

In this embodiment, activation regions are not visible on interface 402and are defined adjacent to each value level 404 such that movement of acursor towards a value level 404 will result in the cursor beingpositioned within an activation region and generate the display of anorder entry field. Each activation region is associated with a specificvalue level 404 and generates an order entry field whereby entering anorder amount in the field facilitates the execution of a trade of thetradable object at the price shown in the specific value level 404associated with the activation region. It should be understood that therelative size and position of the activation regions may vary. However,as exemplified in FIG. 7, each activation region 422 of this embodimentis in a transversely aligned positional relationship perpendicular tothe value axis 406 with respect to its associated value level 404 andmay extend transversely over a portion or all bid quantity regions 408and/or ask quantity regions 410 as well as outside of trading interface402. Order entry fields 420 may be generated and displayed within theirrespective activation regions 422. For example, when the cursor C entersthe activation region 422A shown in FIG. 6, an order entry field 420A(see FIG. 5) may be generated and displayed. Alternatively, when thecursor C enters the activation region 422A shown in FIG. 6, an orderentry field 420A (see FIG. 5) may be generated and displayed elsewhereon trading interface 402, display area 400. In other embodiments,adjacent activation regions may overlap and the movement of the cursor Cwithin those regions and/or the projected or calculated trajectory ofthe cursor C may be utilized to predict which order entry field 420Ashould be activated.

For example, entering a number X into field 420A would facilitate theexecution of a trade of X amount of the tradable object at the priceshown in value level 404A, that is, “176.” It should be understood thatthe prices in value levels 404 may change as market data fluctuates andis presented in trading interface 402.

FIGS. 8 and 9 illustrate the generation of an order entry field 420B inFIG. 9 as a result of positioning the cursor C within an activationregion 422B in FIG. 8 associated with value level 404B. As discussedabove, entering a number X into order entry field 420B in FIG. 9 willfacilitate the execution of a trade of X amount of the tradable objectat the price shown in value level 404B (i.e., “178”).

It should be understood that trading interfaces of the invention, suchas interface 402 may incorporate user-friendly features and fitseamlessly with other operating system interfaces, that is, in a framedform having borders, multiple folders, toolbars with pull-down menus,embedded links to other screens and various other selectable featuresassociated with animated graphical representations of depressiblebuttons that may be can be selected (i.e., “clicked on” or “touched”) bythe user via input device 318, which may include or comprise a connectedmouse, keyboard or touch-enabled display device.

FIGS. 10-12 illustrate a pair of exemplary trading interfaces 402 and402′ generated and displayed in various adjacent positions with respectto one another on a display device in communication with computingdevice 300 to show the effects of proximity on the size and position ofthe activation regions 422A and 422B generated by each interface 402 and402′, respectively. FIG. 10 illustrates a pair of trading interfaces 402and 402′ generated and displayed via the display area 400. The exampletrading interfaces 402 and 402′ are positioned a distance X from eachother in display area 400 such that the activation region 422B generatedby the interface 402 does not interfere with or otherwise influence thedefinition and creation of another activation region 422A by theinterface 402′.

FIG. 1 lillustrates the pair or trading interfaces 402 and 402′ fromFIG. 10 positioned a distance Y from each other in display area 400. Inthe illustrated example, the distance X is greater than the distance Y.In other words, the distance between the trading interface 402 and 402′is greater in the illustration shown in FIG. 10 than it is in theillustration shown in FIG. 11. In certain embodiments, the proximity ofthe two trading interfaces 402 and 402′ affects the size and/or shape ofthe corresponding activation regions 422B and 422A (see FIG. 10). Forexample, when the trading interface 402 is positioned in close proximityto the trading interface 402′ in display area 400 as shown in FIG. 11,the activation regions 422D and 422C automatically resize to the extentnecessary to ensure that the regions do not crossover or otherwiseinterfere with each other. FIG. 12 illustrates an embodiment where thetrading interface 402 is positioned substantially adjacent (i.e., thedistance between the two interfaces is negligible, zero or near zero) tothe trading interface 402′. In the exemplary arrangement of FIG. 12, theactivation region 422F and the activation region 422E have been resizedand positioned within the respective value levels and quantity regionsof the trading interface 402 and 402′.

FIG. 13 provides exemplary functional steps of a method of carrying outthe invention generally referred to as method 550 through a computingdevice such as computing device 300.

As shown by step 552, market data for a tradable object is received by,for example, computing device 300, through one or more sources. The mostcurrent market data is displayed in step 554 on a display device througha trading interface that formats the market data, such as tradinginterface 402, which may include displaying prices for the tradableobject in value levels, along with bid quantities or ask quantities forthe displayed prices.

In step 556, activation regions are defined on the trading interface ina positional relationship with the value levels containing prices forthe tradable object, with each activation region being associated with aunique value level containing a price for the tradable object asprovided by the most current market data. As shown by steps 558 and 560,an order entry field is generated for display responsive to detectingthe cursor or other user input within an activation region. The orderentry field generated facilitates execution of a trade at the uniqueprice displayed in the value level associated with the activation regionin which the cursor is positioned.

Some of the described figures depict example block diagrams, systems,and/or flow diagrams representative of methods that may be used toimplement all or part of certain embodiments. One or more of thecomponents, elements, blocks, and/or functionality of the example blockdiagrams, systems, and/or flow diagrams may be implemented alone or incombination in hardware, firmware, discrete logic, as a set of computerreadable instructions stored on a tangible computer readable medium,and/or any combinations thereof, for example.

The example block diagrams, systems, and/or flow diagrams may beimplemented using any combination of application specific integratedcircuit(s) (ASIC(s)), programmable logic device(s) (PLD(s)), fieldprogrammable logic device(s) (FPLD(s)), discrete logic, hardware, and/orfirmware, for example. Also, some or all of the example methods may beimplemented manually or in combination with the foregoing techniques,for example.

The example block diagrams, systems, and/or flow diagrams may beperformed using one or more processors, controllers, and/or otherprocessing devices, for example. For example, the examples may beimplemented using coded instructions, for example, computer readableinstructions, stored on a tangible computer readable medium. A tangiblecomputer readable medium may include various types of volatile andnon-volatile storage media, including, for example, random access memory(RAM), read-only memory (ROM), programmable read-only memory (PROM),electrically programmable read-only memory (EPROM), electricallyerasable read-only memory (EEPROM), flash memory, a hard disk drive,optical media, magnetic tape, a file server, any other tangible datastorage device, or any combination thereof. The tangible computerreadable medium is non-transitory.

Further, although the example block diagrams, systems, and/or flowdiagrams are described above with reference to the figures, otherimplementations may be employed. For example, the order of execution ofthe components, elements, blocks, and/or functionality may be changedand/or some of the components, elements, blocks, and/or functionalitydescribed may be changed, eliminated, sub-divided, or combined.Additionally, any or all of the components, elements, blocks, and/orfunctionality may be performed sequentially and/or in parallel by, forexample, separate processing threads, processors, devices, discretelogic, and/or circuits.

While embodiments have been disclosed, various changes may be made andequivalents may be substituted. In addition, many modifications may bemade to adapt a particular situation or material. Therefore, it isintended that the disclosed technology not be limited to the particularembodiments disclosed, but will include all embodiments falling withinthe scope of the appended claims.

What is claimed is:
 1. A system including: a computing device having amemory and a processor, wherein the memory stores instructionsexecutable by the processor, wherein the instructions are executable to:display a trading interface, wherein the trading interface includes aplurality of bid regions aligned along a value axis, wherein the tradinginterface includes a plurality of ask regions aligned along the valueaxis, wherein the value axis includes a plurality of value levels eachassociated with a price for a tradeable object, wherein each bid regionin the plurality of bid regions is associated with a value level of thevalue axis, wherein each ask region in the plurality of ask regions isassociated with a value level of the value axis; generate an activationregion associated with a first value level of the value axis, whereinthe activation region is aligned with the value axis at thecorresponding first value level; receive an instance of user inputwithin the activation region, wherein the instance of user input withinthe activation region is received in response to a cursor beingpositioned in the activation region; generate an order entry field inresponse to receiving the instance of user input within the activationregion, wherein the order entry field is configured to receive aquantity value from a user to facilitate the placement of a trade of thetradeable object at the price corresponding to the first value levelassociated with the activation region and for the received quantityvalue; and display the generated order entry field.
 2. The system ofclaim 1, wherein the activation region is generated based on a proximityof a second trading interface.
 3. The system of claim 1, wherein theactivation region overlaps a portion of one of: (i) a first bid regionin the plurality of bid regions and (ii) a first ask region in theplurality of ask regions.
 4. The system of claim 1, wherein theactivation region overlaps all of one of: (i) a first bid region in theplurality of bid regions and (ii) a first ask region in the plurality ofask regions.
 5. The system of claim 1, wherein the activation regionextends outside of one of: (i) a first bid region in the plurality ofbid regions and (ii) a first ask region in the plurality of ask regions.6. The system of claim 1, wherein the activation region extends outsideof the trading interface.
 7. The system of claim 1, wherein the orderentry field is displayed adjacent to one of: (i) a first bid region inthe plurality of bid regions associated with the first value level and(ii) a first ask region in the plurality of ask regions associated withthe first value level.
 8. The system of claim 1, wherein the order entryfield is displayed within the activation region.
 9. The system of claim1, wherein the order entry field is displayed outside the activationregion.
 10. The system of claim 1, wherein the stored instructions arefurther executable to: receive a quantity value from a user in thedisplayed order entry field; and send an order for the tradeable objectat the price corresponding to the first value level and for the receivedquantity value.